package com.jic.market.response.rest.coupon;

import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class CouponsProductResponse implements Serializable {

  @ApiModelProperty(notes = "主键ID", required = true)
  private long id;

  @ApiModelProperty(notes = "优惠券活动id")
  private String promotionId;

  @ApiModelProperty(notes = "优惠券名称")
  private String promName;

  @ApiModelProperty(notes = "活动标签")
  private String labelName;

  @ApiModelProperty(notes = "优惠券种类 0电子券 1实体券")
  private Integer couponType;

  @ApiModelProperty(notes = "优惠券使用用户类型,0全部,1新用户,2老用户")
  private Integer couponUsePersonType;

  @ApiModelProperty(notes = "金额抵扣类型,0商品券,1运费券")
  private Integer amountDeductType;

  @ApiModelProperty(notes = "优惠方式,0金额券,1折扣券")
  private Integer couponMode;

  @ApiModelProperty(notes = "发行数量")
  private Integer grantTotalNum;

  @ApiModelProperty(notes = "couponMode = 0 时 ，优惠券面值单位元 ; couponMode = 1时  优惠券折扣力度")
  private BigDecimal couponAmount;

  @ApiModelProperty(notes = "使用说明")
  private String chineseDesc;

  @ApiModelProperty(notes = "使用开始时间")
  private Date couponUseStartTime;

  @ApiModelProperty(notes = "使用结束时间")
  private Date couponUseEndTime;

  @ApiModelProperty(notes = "订单总金额限制单位元")
  private BigDecimal useTotalAmountLimit;

  @ApiModelProperty(notes = "用户领取总数限制")
  private Integer idLimitNum;

  @ApiModelProperty(notes = "用户每日领取数量限制")
  private Integer idLimitDayNum;

  @ApiModelProperty(notes = "用户可领取数量")
  private Integer userAvailableNum;

  @ApiModelProperty(notes = "优惠券状态")
  private int receiveStatus;
}
